Method and node for realizing route discovery in network

ABSTRACT

A method for realizing route discovery in a network includes: classifying a level of a node in the network; receiving a route request packet from a node adjacent to the node; comparing a node level indicated by node level information contained in the received route request packet with the level of the node; updating, in a case where the level of the node is higher than the node level indicated by the node level information contained in the route request packet, the node level indicated by the node level information contained in the route request packet to be the level of the node; and forwarding the updated route request packet to other nodes adjacent to the node.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of Chinese Application No.201010290852.0, filed Sep. 20, 2010, the disclosure of which isincorporated herein by reference.

FIELD

The present invention relates to the field of network communication, andin particular, to a method and node for realizing route discovery in anetwork.

BACKGROUND

There has been proposed several routing strategies such as Ad hocOn-Demand Distance Vector Routing (AODV), Dynamic Source Routing (DSR),Destination-Sequenced Distance-Vector Routing (DSDV) and the like for awireless ad hoc network. Among them, the AODV protocol is the focus ofresearch and is widely used. In the AODV, routing establishment androuting selection are two critical stages. At the stage of routingestablishment, a source node transmits a route request (RREQ) packet toa destination node. The route request packet is a broadcasting packetwhich will be forwarded by intermediate nodes in a flooding manner. Atthe stage of routing selection, a route with a minimum hop count will beused as an effective path to the destination node from the source node.This routing method is very helpful to reduce routing control overheadand to improve efficiency. However, at the stage of routingestablishment, a node forwards the RREQ packet transmitted by the sourcenode in the flooding manner, which leads to following issues. Firstly,each node would forward the RREQ packet blindly (in the floodingmanner), resulting in a large number of redundant information over thenetwork. Secondly, the large number of RREQ packets transmitted by thenodes over the network would increase the probability of collision ofthe data packets. Thirdly, transmission and reception of the RREQpackets would occupy network resources, and therefore the transmissionof the large number of redundant RREQ packets would result in reductionof the network performance.

SUMMARY

Hereinafter, there is provided a brief summary about the presentinvention in order to provide a basic understanding on certain aspectsof the invention. However, it should be understood that this summary isnot an exhaustive summary about the invention. It is not intended todetermine critical portions or important portions of the invention, nordoes it intend to limit the scope of the invention. The object thereofis only to propose some concepts with respect to the invention in asimplified form, thereby to be a prelude of the more detaileddescription given later.

In light of above situations in the prior art, an object of theinvention is to provide a method and node for realizing route discoveryin a network, which can reduce transmission of the RREQ packetsefficiently, reduce the probability of collision of the data packets,and improve the network performance.

To achieve the above object, according to an aspect of the invention,there is provided a method for realizing route discovery in a networkincluding the steps of: classifying a level of a node in the network;receiving a route request packet from a node adjacent to the node;comparing a node level indicated by node level information contained inthe received route request packet with the level of the node; updating,in a case where the level of the node is higher than the node levelindicated by the node level information contained in the route requestpacket, the node level indicated by the node level information containedin the route request packet to be the level of the node; and forwardingthe updated route request packet to other nodes adjacent to the node.

According to another aspect of the invention, there is further provideda node for realizing route discovery in a network including: a levelclassification unit for classifying a level of the node; a receptionunit for receiving a route request packet from a node adjacent to thenode; a comparison unit for comparing a node level indicated by nodelevel information contained in the route request packet received by thereception unit with the level of the node obtained by the levelclassification unit; a updating unit for updating, in a case where thelevel of the node is higher than the node level indicated by the nodelevel information contained in the route request packet, the node levelindicated by the node level information contained in the route requestpacket to be the level of the node; and a forwarding unit for forwardingthe route request packet updated by the updating unit to other nodesadjacent to the node.

According to another aspect of the invention, there is further provideda computer program product for implementing the method for realizingroute discovery in a network above.

According to another aspect of the invention, there is further provideda machine-readable storage medium on which computer program codes forimplementing the method for realizing route discovery in a network aboveis carried.

In the technical solution of the invention mentioned above, a largenumber of redundant packets can be reduced when route discovery isperformed, and potential collusion would be reduced since a large numberof redundant information is removed. Thus, the technical solution of theinvention can increase the packet transmission ratio and the networktraffic and reduce the end to end delay.

BRIEF DESCRIPTION OF DRAWINGS

The invention can be better understood by referring to the detaileddescription given hereinafter in combination with the accompany drawingsin which identical or similar components are denoted by identical orsimilar reference numbers. The accompany drawings together with thedetailed description below are included in the specification and formparts of the specification for further illustrating preferredembodiments of the invention and explaining principles and advantages ofthe invention by way of example. Wherein:

FIG. 1 is a flow chart illustrating a method for realizing routediscovery in a network according to an embodiment of the invention;

FIG. 2 is diagram illustrating a specific example of realizing of routediscovery in a network according to the embodiment of the invention;

FIG. 3 is a block diagram illustrating a node for realizing routediscovery in a network according to the embodiment of the invention; and

FIG. 4 is a block diagram illustrating an exemplary structure of ageneral purpose personal computer in which the method and/or nodeaccording to the embodiment of the invention can be implemented.

Those skilled in the art should understand that elements in the drawingsare only shown for the purpose of simplicity and clarity, and are notnecessarily drawn to scales. For example, sizes of certain elements inthe drawings may be enlarged relative to other elements so that it ishelpful to improve the understanding on the embodiments of theinvention.

DESCRIPTION OF EMBODIMENTS

Hereinafter, an exemplary embodiment of the invention will be describedin combination with the drawings. For the purpose of clarity andsimplicity, not all the features of the actual embodiment are describedin the specification. However, it should be appreciated that it has tomake a lot of decisions specific to the embodiments during a process fordeveloping any such actual embodiments in order to achieve specifictargets of developers, for example, complying with those restrictiveconditions related to systems and operations, and these restrictiveconditions may vary with different embodiments. Further, it should alsobe appreciated that although developing work may be very complex andtime-consuming, such developing work is merely a routine task for thoseskilled in the art who benefit from the present disclosure.

Herein, there is still one point needed to be illustrated that, forpreventing unnecessary details from obscuring the invention, only thedevice structures and/or processing steps closely related to the schemeaccording to the invention are shown in the drawings, and other detailshaving little to do with the invention are omitted.

The method for realizing route discovery in a network according to theembodiment of the invention is described in detail with reference to thedrawings in the following.

FIG. 1 is a flow chart illustrating a method for realizing routediscovery in a network according to an embodiment of the invention.

Firstly, in step S110, a level of a node in the network is classified.

Through the process in step S110, each of the nodes in the network isclassified into various levels. It is appreciated by those skilled inthe art that it is possible to classify the levels of the nodes in thenetwork in a plurality of different manners as necessary.

According to the preferred embodiment of the invention, when the levelof the node in the network is classified, cost of the node may becalculated firstly, and then the level of the node may be classified inaccordance with the cost.

According to the preferred embodiment of the invention, the cost of thenode may be calculated with following cost equation (1):cost=a*remaining_energy+b*hop_count+cneighbor_density+d*bandwidth  (1)

where cost denotes the cost of the node, remaining_energy denotesremaining energy of the node, hop_count denotes a minimum hop count fromthe node to a destination node, neighbor_density denotes a neighboringnode density of the node, bandwidth denotes bandwidth of the node, anda, b, c and d denote weighting coefficients.

It is appreciated by those skilled in the art that the weightingcoefficients a, b, c and d mentioned above are decided in accordancewith requirements of application scenarios. For example, if theweighting coefficient b of hop_count is set to be minimal, it means thatthe importance of hop_count in that application scenario is minimal. Onthe contrary, if the weighting coefficient b of hop_count is set to bemaximal, it means that the importance of hop_count in that applicationscenario is maximal.

It is also appreciated by those skilled in the art that other parametersand corresponding weighting coefficients can be considered to be addedinto the cost equation in accordance with requirements of applicationscenarios, in addition to the parameters remaining_energy, hop_count,neighbor_density and bandwidth mentioned above.

According to the preferred embodiment of the invention, the cost of thenode may be calculated at an initialization phase. At the initializationphase, for each of the nodes, after learning for a period of time,information on cost from the current node to the destination node can beobtained. Particularly, at the initialization phase, the node learns andcollects the sample value of the cost from the current node to thedestination node by transmitting a data packet to the destination node.Whereby, the level of the node can be classified according to theobtained cost of the node.

According to the preferred embodiment of the invention, the cost of thenode may be updated in a process of data transmission. Particularly, atthe data transmission phase, each time the node transmits or forwardsthe data packet, a current cost value will be calculated once from thisprocess, and the calculated current cost value is added into a costsample space of the node. Then, the cost of the node will be updatedaccording to the cost sample space. Thus, the real time performance ofthe cost information can be improved, and the real time status change ofthe network can be adapted.

Next, in step S120, a route request (RREQ) packet from a node adjacentto the node is received.

The RREQ packet in the embodiment of the invention is different fromthat in the prior art in that node level information of the last hopnode (i.e. the node transmitting this RREQ packet adjacent to thecurrent node) is contained in the RREQ packet received by the currentnode.

Next, in step S130, a node level indicated by the node level informationcontained in the received route request packet is compared with thelevel of the current node. In other words, it is judged in step S130whether the level of the current node is higher than that of the lasthop node.

If it is judged in step S130 that the level of the current node ishigher than that of the last hop node, the process proceeds to stepS140.

If it is judged in step S130 that the level of the current node is nothigher than that of the last hop node, the process ends.

According to the preferred embodiment of the invention, in a case wherethe level of the current node is not higher than the node levelindicated by the node level information contained in the route requestpacket, the route request packet may be discarded instead of beingforwarded.

If the process proceeds to step S140, the node level indicated by thenode level information contained in the route request packet is updatedto be the level of the current node in step S140.

Thus, the node level information indicating the level of the currentnode is contained in the updated route request packet.

Finally, in step S150, the updated route request packet is forwarded toother nodes adjacent to the current node.

With the method for realizing route discovery in a network aboveaccording to the invention, transmission of the RREQ packets can bereduced efficiently, the probability of collision of the data packetscan be reduced, and the network performance can improved. The methodaccording to the invention is particularly suitable for an intelligentmeter reading system in an application scenario where network topologychanges very slowly and the destination node has been determined.

According to the preferred embodiment of the invention, at the stage ofrouting establishment, before a source node starts to broadcast a routerequest packet to a node adjacent to the source node, information on alevel of the source node is added as node level information into theroute request packet. After that, the source node broadcasts the amendedroute request packet to the node adjacent to the source node.

According to the preferred embodiment of the invention, after adestination node receives a route request packet from a node adjacent tothe destination node, the route discovery is realized.

Hereinafter, the method for realizing route discovery in a networkaccording to the invention is described in detail with reference to FIG.2.

FIG. 2 is diagram illustrating a specific example of realizing of routediscovery in a network according to the embodiment of the invention. Inthe network as shown in FIG. 2, a source node, an intermediate node anda destination node are included. Positions of the source node and thedestination node are shown in FIG. 2(a).

Cost of a node is calculated at an initialization phase, and then alevel of the node is classified in accordance with the calculated cost.For the purpose of convenience for explanation, only a minimum hop countfrom a current node to the destination node is taken into considerationwhen the cost of the node is calculated. That is, in the cost equation(1) above, the weighting coefficients a, c and d are set to be zero, andthe weighting coefficient b is set to be 1. As shown in FIG. 2(b), thenodes in the network are classified into various levels. Herein, thelevel of the source node is Level 4. In the current example, higher thelevel number of a node is, lower the level of the node is.

At the stage of routing establishment, before the source node starts tobroadcast a route request packet to a node adjacent to the source node,information on the level (Level 4) of the source node is added as nodelevel information into the route request packet. After that, the sourcenode broadcasts the amended route request packet to the node adjacent tothe source node.

The intermediate nodes with Levels 3, 4 and 5, respectively, adjacent tothe source node with Level 4 receive the route request packet from thesource node. The node level information indicating the level (Level 4)of the source node is contained in the route request packets received bythose intermediate nodes. Then, the intermediate node which receives theroute request packet from the source node compares the node levelindicated by the node level information contained in the received routerequest packet with the level of the current node, so as to judgewhether the level of the current node is higher than that of the sourcenode.

The intermediate node with Level 3 judges that the level of the currentnode is higher than that of the source node with Level 4, and thenupdates the node level (Level 4) indicated by the node level informationcontained in the route request packet to be the level (Level 3) of thecurrent node.

Thus, the node level information indicating the level (level 3) of thecurrent node is contained in the updated route request packet.

After that, the intermediate node with Level 3 forwards the updatedroute request packet to other nodes adjacent to this intermediate node.

Meanwhile, The intermediate node with Level 4 or 5 judges that the levelof the current node is not higher than (lower than or equal to) that ofthe source node with Level 4, and then discards the route request packetinstead of forwarding it.

Similarly, when a current node receives a route request packet from alast hop node, the current node firstly judges whether the level of thecurrent node is higher than that of the last hop node. If the level ofthe current node is higher than that of the last hop node, the currentnode updates the level thereof into the route request packet and thenforwards the updated route request packet to a next hop node. If thelevel of the current node is not higher than that of the last hop node,the route request packet is discarded instead of being forwarded.

At last, as shown in FIG. 2(c), when the destination node receives aroute request packet from a node adjacent to the destination node, theroute discovery from the source node to the destination node isrealized.

The node for realizing route discovery in a network according to theembodiment of the invention is described in detail with reference to thedrawings in the following.

FIG. 3 is a block diagram illustrating a node 300 for realizing routediscovery in a network according to the embodiment of the invention.

As shown in FIG. 3, the node 300 according to the embodiment of theinvention includes a level classification unit 310, a reception unit320, a comparison unit 330, an updating unit 340, and a forwarding unit350.

The level classification unit 310 is adapted to classify a level of thenode 300.

The reception unit 320 is adapted to receive a route request packet froma node adjacent to the node 300.

The comparison unit 330 is adapted to compare a node level indicated bynode level information contained in the route request packet received bythe reception unit 320 with the level of the node 300 obtained by thelevel classification unit 310.

The updating unit 340 is adapted to update, in a case where the level ofthe node 300 is higher than the node level indicated by the node levelinformation contained in the route request packet, the node levelindicated by the node level information contained in the route requestpacket to be the level of the node 300.

The forwarding unit 350 is adapted to forward the route request packetupdated by the updating unit 340 to other nodes adjacent to the node300.

According to the preferred embodiment of the invention, the levelclassification unit 310 may further include a cost calculation unit (notshown) for calculating cost of the node 300. The level classificationunit 310 classifies the level of the node 300 in accordance with thecost calculated by the cost calculation unit.

According to the preferred embodiment of the invention, the costcalculation unit may calculate the cost of the node 300 with the costequation (1) above.

According to the preferred embodiment of the invention, the costcalculation unit may calculate the cost of the node 300 at aninitialization phase.

According to the preferred embodiment of the invention, the costcalculation unit may update the cost of the node 300 in a process ofdata transmission by the node 300.

The various specific implementations of the respective units above inthe node 300 have been described in detail previously, and therefore theexplanations thereof will not be repeated herein.

Apparently, respective operating processes of the method above accordingto the invention can be implemented in a manner of a computer executableprogram stored on a machine-readable storage medium.

And, the object of the invention can be implemented in a manner that thestorage medium on which the computer executable program above is carriedis provided directly or indirectly to a system or apparatus, a computeror a Central Processing Unit (CPU) of which reads out and executes thecomputer executable program. Here, the implementation of the inventionis not limited to a program as long as the system or apparatus has afunction to execute the program, and the program can be in arbitraryforms such as an objective program, a program executed by aninterpreter, a script program provided to an operating system, etc.

The machine-readable storage medium mentioned above includes, but is notlimited to, various memories and storage devices, a semiconductordevice, a disk unit such as an optic disk, a magnetic disk and amagneto-optic disk, and other medium suitable for storing information.However, the machine-readable medium mentioned above does not include atransitory medium such as a propagation signal.

Additionally, the invention can also be implemented by connecting to acorresponding web site on the Internet through a computer, downloadingand installing the computer executable program according to theinvention into the computer, and then executing the program.

FIG. 4 is a block diagram illustrating an exemplary structure of ageneral purpose personal computer in which the method and/or nodeaccording to the embodiment of the invention can be implemented.

As shown in FIG. 4, a CPU 1301 executes various processing according toa program stored in a Read Only Memory (ROM) 1302 or a program loaded toa Random Access Memory (RAM) 1303 from a storage device 1308. In the RAM1303, if necessary, data required for the CPU 1301 in executing variousprocessing and the like is also stored. The CPU 1301, the ROM 1302 andthe RAM 1303 are connected to each other via a bus 1304. An input/outputinterface 1305 is also connected to the bus 1304.

The following components are connected to the input/output interface1305: an input device 1306 including a keyboard, a mouse and the like,an output device 1307 including a display such as a Cathode Ray Tube(CRT) and a Liquid Crystal Display (LCD), a speaker and the like, thestorage device 1308 including a hard disk and the like, and acommunication device 1309 including a network interface card such as aLAN card, a modem and the like. The communication device 1309 performscommunication processing via a network such as the Internet. Ifnecessary, a drive 1310 can also be connected to the input/outputinterface 1305. A removable medium 1311 such as a magnetic disk, anoptical disk, a magneto-optical disk, a semiconductor memory and thelike is mounted on the drive 1310 as necessary such that a computerprogram read out therefrom is installed in the storage device 1308.

In a case that the series of processing above is implemented insoftware, a program constituting the software is installed from thenetwork such as the Internet or the storage medium such as the removablemedium 1311.

It is understood by those skilled in the art that the storage medium isnot limited to the removable medium 1311 shown in FIG. 4 in which theprogram is stored and which is distributed separately from the device soas to provide the program to the user. Examples of the removable medium1311 include a magnetic disk including a Floppy Disk (registeredtrademark), an optical disk including a Compact Disk Read Only Memory(CD-ROM) and a Digital Versatile Disc (DVD), a magneto-optical diskincluding a MiniDisc (MD) (registered trademark), and a semiconductormemory. Alternatively, the storage medium may be the ROM 1302, the harddisk contained in the storage device 1308 or the like. Herein, theprogram is stored in the storage medium, and the storage medium isdistributed to the user together with the device containing the storagemedium.

In the node and method of the invention, it is obvious that respectivecomponents or steps can be decomposed and/or recombined. Suchdecomposition and/or recombination should be considered as an equivalentsolution of the invention. And, the steps performing a series ofprocessing above can be performed in the describing order naturally, butthis is not necessary. Some steps can be performed concurrently orindependently with one another.

Although the embodiment of the invention has been described in detail incombination with the drawings above, it should be understood that, theembodiment described above is only used to explain the invention and isnot constructed as the limitation to the invention. For those skilled inthe art, various modification and alternation can be made to the aboveembodiment without departing from the essential and scope of theinvention. Therefore, the scope of the invention is only defined by theappended claims and the equivalents thereof.

What is claimed is:
 1. A method for realizing route discovery in anetwork comprising a plurality of nodes classified into a source node,an intermediate node, and a destination node, the method comprising:classifying, by each of the plurality of nodes, a level of the each ofthe plurality of nodes in the network; receiving, by the intermediatenode, a route request packet from the source node or anotherintermediate node adjacent to the intermediate node; comparing, by theintermediate node, a node level of the source node or anotherintermediate node indicated by node level information contained in thereceived route request packet with the level of the intermediate node;updating, by the intermediate node, in a case where the level of theintermediate node is higher than the node level of the source node oranother intermediate node, the node level indicated by the node levelinformation contained in the route request packet to be the level of theintermediate node; forwarding, by the intermediate node, the updatedroute request packet to the other intermediate node or the destinationnode adjacent to the intermediate node; and discarding, by theintermediate node, the route request packet in a case where the level ofthe intermediate node is not higher than the node level of the sourcenode or another intermediate node, wherein classifying the level of theeach of the plurality of nodes in the network further comprises:calculating cost of the each of the plurality of nodes; and classifyingthe level of the each of the plurality of nodes in accordance with thecost, and wherein the cost of the each of the plurality of nodes iscalculated at an initialization phase, comprising: each of the pluralityof nodes obtains the cost from the each of the plurality of nodes to thedestination node by transmitting a data packet to the destination node,and wherein the cost of the each of the plurality of nodes is updated ina process of data transmission, comprising: a current cost value iscalculated when the each of the plurality of nodes transmits or forwardsthe data packet, the calculated current cost value is added into a costsample space of the each of the plurality of nodes, and the cost of theeach of the plurality of nodes is updated according to the cost samplespace.
 2. The method according to claim 1, wherein the cost of the eachof the plurality of nodes is calculated based on remaining energy, aneighboring node density, and bandwidth of the each of the plurality ofnodes and a minimum hop count from the each of the plurality of nodes tothe destination node.
 3. The method according to claim 1, furthercomprising: adding, by the source node, information on a level of thesource node as node level information into the route request packet; andbroadcasting the route request packet to the intermediate node or thedestination node adjacent to the source node.
 4. The method according toclaim 1, further comprising: realizing, by the destination node, theroute discovery after a route request packet from the intermediate nodeor the source node adjacent to the destination node has been received.5. A node for realizing route discovery in a network comprising aplurality of nodes classified into a source node, an intermediate node,and a destination node, the node when being classified into theintermediate node comprising: a level classification unit forclassifying a level of the intermediate node; a reception unit forreceiving a route request packet from the source node or anotherintermediate node adjacent to the intermediate node; a comparison unitfor comparing a node level of the source node or another intermediatenode indicated by node level information contained in the route requestpacket received by the reception unit with the level of the intermediatenode obtained by the level classification unit; a updating unit forupdating, in a case where the level of the intermediate node is higherthan the node level of the source node or another intermediate node, thenode level indicated by the node level information contained in theroute request packet to be the level of the intermediate node; and aforwarding unit for forwarding the route request packet updated by theupdating unit to the other intermediate node or the destination nodeadjacent to the intermediate node or discarding the route request packetin a case where the level of the intermediate node is not higher thanthe node level of the source node or another intermediate node, whereinthe level classification unit further comprises: a cost calculation unitfor calculating cost of the intermediate node; the level classificationunit classifies the level of the intermediate node in accordance withthe cost calculated by the cost calculation unit, and wherein the costcalculation unit calculates the cost of the intermediate node at aninitialization phase, comprising: the intermediate node obtains the costfrom the intermediate node to the destination node by transmitting adata packet to the destination node, and wherein the cost calculationunit updates the cost of the intermediate node in a process of datatransmission by the intermediate node, comprising: a current cost valueis calculated when the intermediate node transmits or forwards the datapacket, the calculated current cost value is added into a cost samplespace of the intermediate node, and the cost of the intermediate node isupdated according to the cost sample space.
 6. The node according toclaim 5, wherein the cost calculation unit calculates the cost of theintermediate node based on remaining energy, a neighboring node density,and bandwidth of the intermediate node and a minimum hop count from theintermediate node to the destination node.
 7. A machine-readable mediumstoring an information display program for causing a computer to executea process for realizing route discovery in a network comprising aplurality of nodes classified into a source node, an intermediate node,and a destination node, the process comprising: classifying, by each ofthe plurality of nodes, a level of the each of the plurality of nodes inthe network; receiving, by the intermediate node, a route request packetfrom the source node or another intermediate node adjacent to theintermediate node; comparing, by the intermediate node, a node level ofthe source node or another intermediate node indicated by node levelinformation contained in the received route request packet with thelevel of the intermediate node; updating, by the intermediate node, in acase where the level of the intermediate node is higher than the nodelevel of the source node or another intermediate node, the node levelindicated by the node level information contained in the route requestpacket to be the level of the intermediate node; forwarding, by theintermediate node, the updated route request packet to the otherintermediate node or the destination node adjacent to the intermediatenode; and discarding, by the intermediate node, the route request packetin a case where the level of the intermediate node is not higher thanthe node level of the source node or another intermediate node, whereinclassifying the level of the each of the plurality of nodes in thenetwork further comprises: calculating cost of the each of the pluralityof nodes; and classifying the level of the each of the plurality ofnodes in accordance with the cost, and wherein the cost of the each ofthe plurality of nodes is calculated at an initialization phase,comprising: each of the plurality of nodes obtains the cost from theeach of the plurality of nodes to the destination node by transmitting adata packet to the destination node, and wherein the cost of the each ofthe plurality of nodes is updated in a process of data transmission,comprising: a current cost value is calculated when the each of theplurality of nodes transmits or forwards the data packet, the calculatedcurrent cost value is added into a cost sample space of the each of theplurality of nodes, and the cost of the each of the plurality of nodesis updated according to the cost sample space.
 8. The machine-readablemedium according to claim 7, wherein the cost of the each of theplurality of nodes is calculated based on remaining energy, aneighboring node density, and bandwidth of the each of the plurality ofnodes and a minimum hop count from the each of the plurality of nodes tothe destination node.